<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core">  
    
    <ui:composition template="./template.xhtml">
        <ui:define name="title">Administración de Clientes</ui:define>

        <ui:define name="content">
            <h:form id="form">  
                <p:messages id="messages" showDetail="true"/>
                <p:dataTable id="clientes" var="cliente" value="#{clienteBean.allClientes}" rowKey="#{cliente.nombre}"  
                             selection="#{clienteBean.clienteSelected}" selectionMode="single">  
                    <p:ajax event="rowSelect" update=":form2:panel2" />
                    <f:facet name="header">  
                        Seleccione un cliente para modificar o eliminar, o agregue un cliente con el formulario
                    </f:facet>  
                    <p:column headerText="Nombre">  
                        #{cliente.nombre}  
                    </p:column>  
                    <p:column headerText="Direccion">  
                        #{cliente.direccion}  
                    </p:column>  
                    <p:column headerText="Telefono" >  
                        #{cliente.telefono}  
                    </p:column>  
                </p:dataTable>
            </h:form>
            
            
            <h:form id="form2">
                <p:panel id="panel2">
                    <h:outputLabel for="nombre"> Nombre </h:outputLabel>
                    <p:inputText id="nombre" value="#{clienteBean.clienteSelected.nombre}" required="true"></p:inputText><br></br>
                    <h:outputLabel for="direccion"> Direccion </h:outputLabel>
                    <p:inputText id="direccion" value="#{clienteBean.clienteSelected.direccion}" required="true"></p:inputText><br></br>
                    <h:outputLabel for="telefono"> Telefono </h:outputLabel>
                    <p:inputText id="telefono" value="#{clienteBean.clienteSelected.telefono}" required="true"></p:inputText><br></br>

                    <h:panelGrid columns="5">
                        <p:commandButton value="Nuevo" action="#{clienteBean.guardarCliente()}" update=":form,:form2" />
                        <p:commandButton value="Modificar" action="#{clienteBean.modificarCliente()}" update=":form,:form2" />
                        <p:commandButton value="Eliminar" action="#{clienteBean.eliminarCliente()}" update=":form,:form2" />
                        <p:commandButton value="Limpiar" action="#{clienteBean.limpiarForm()}" update=":form,:form2" />
                    </h:panelGrid>
                </p:panel>
            </h:form>
        </ui:define>
    </ui:composition>
</html>

